package study9;
import java.lang.reflect.Field;
/**
 * @author zerorain
 * @date 2022/04/02 19:16
 **/
  public class Message<T extends Number> {
        private T msg;
        public T getMsg() {
            return msg;
        }
        public void setMsg(T msg) {
            this.msg = msg;
        }

        public static void main(String[] args) throws Exception{
            Message<Integer> msg1 = new Message<>();
            Message<Double> msg2 = new Message<>();
            Field field1 = msg1.getClass().getDeclaredField("msg");
            Field field2 = msg2.getClass().getDeclaredField("msg");
            System.out.println(field1.getType());
            System.out.println(field2.getType());

        }

//    public static void fun(Message<? super String> msg) {
//        // 此时能否调用msg.set方法？
//        msg.setMsg("hehe");
//        System.out.println(msg.getMsg());
//    }
    }